package com.example.demotool.Scheduled;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;

import java.text.SimpleDateFormat;
import java.time.LocalTime;
import java.util.Date;

@Component
public class MyTask {
    @Value("${schedule.enable}")
    private boolean Switch;

    @Scheduled(fixedRate = 5000)
    public void testTaskFirst() {
        if (Switch) {
            System.out.println("定时任务一:每五秒执行一次，当前时间：" + LocalTime.now());
        }
    }

    @Scheduled(cron = "0 28 03 ? * *")
    public void testTaskSecond() {
        if (Switch) {
            System.out.println("定时任务二:指定每天3:28执行，当前时间：" + LocalTime.now());
        }
    }

    @Scheduled(cron = "0/2 * * * * ? ")
    public void testTaskThree() {
        if (Switch) {
            Date date = new Date();
            SimpleDateFormat simpleDateFormat = new SimpleDateFormat("定时任务三：今天是 " + "yyyy 年 MM 月 dd 日 E HH 点 mm 分 ss 秒");
            System.out.println(simpleDateFormat.format(date));
        }
    }
}
